package gestion.horarios.model.jpa.entities;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;
import java.util.List;


/**
 * The persistent class for the horario database table.
 * 
 */
@Entity
@Table(name="horario")
public class Horario implements Serializable {
	private static final long serialVersionUID = 1L;
	private int horarioId;
	private String estado;
	private Date fechaGeneracion;
	private Escenario escenario;
	private List<Seccion> seccions;
	private List<SolicitudCambioHorario> solicitudcambiohorarios;

    public Horario() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(unique=true, nullable=false)
	public int getHorarioId() {
		return this.horarioId;
	}

	public void setHorarioId(int horarioId) {
		this.horarioId = horarioId;
	}


	@Column(length=45)
	public String getEstado() {
		return this.estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}


    @Temporal( TemporalType.TIMESTAMP)
	public Date getFechaGeneracion() {
		return this.fechaGeneracion;
	}

	public void setFechaGeneracion(Date fechaGeneracion) {
		this.fechaGeneracion = fechaGeneracion;
	}


	//bi-directional many-to-one association to Escenario
    @ManyToOne
	@JoinColumn(name="EscenarioId", nullable=false)
	public Escenario getEscenario() {
		return this.escenario;
	}

	public void setEscenario(Escenario escenario) {
		this.escenario = escenario;
	}
	

	//bi-directional many-to-one association to Seccion
	@OneToMany(mappedBy="horario")
	public List<Seccion> getSeccions() {
		return this.seccions;
	}

	public void setSeccions(List<Seccion> seccions) {
		this.seccions = seccions;
	}
	

	//bi-directional many-to-one association to SolicitudCambioHorario
	@OneToMany(mappedBy="horario")
	public List<SolicitudCambioHorario> getSolicitudcambiohorarios() {
		return this.solicitudcambiohorarios;
	}

	public void setSolicitudcambiohorarios(List<SolicitudCambioHorario> solicitudcambiohorarios) {
		this.solicitudcambiohorarios = solicitudcambiohorarios;
	}
	
}